pac1811 2.2.0
Loading...
Searching...
No Matches
pac1811.h File Reference

This file contains API for PAC1811 Click Driver. More...

#include "drv_digital_out.h"
#include "drv_digital_in.h"
#include "drv_i2c_master.h"

Go to the source code of this file.

Data Structures

struct  pac1811_data_t
 PAC1811 Click data object. More...
struct  pac1811_t
 PAC1811 Click context object. More...
struct  pac1811_cfg_t
 PAC1811 Click configuration object. More...

Macros

#define PAC1811_REG_REFRESH   0x00
 PAC1811 register list.
#define PAC1811_REG_CTRL   0x01
#define PAC1811_REG_ACC_COUNT   0x02
#define PAC1811_REG_VACC   0x03
#define PAC1811_REG_VBUS   0x04
#define PAC1811_REG_VSENSE   0x05
#define PAC1811_REG_VBUS_AVG   0x06
#define PAC1811_REG_VSENSE_AVG   0x07
#define PAC1811_REG_VPOWER   0x08
#define PAC1811_REG_VBUS_MIN   0x09
#define PAC1811_REG_VBUS_MAX   0x0A
#define PAC1811_REG_VSENSE_MIN   0x0B
#define PAC1811_REG_VSENSE_MAX   0x0C
#define PAC1811_REG_VPOWER_MIN   0x0D
#define PAC1811_REG_VPOWER_MAX   0x0E
#define PAC1811_REG_CTRL_LAT   0x0F
#define PAC1811_REG_NEG_PWR_FSR_LAT   0x10
#define PAC1811_REG_ALERT_STATUS   0x11
#define PAC1811_REG_SMBUS_SETTINGS   0x12
#define PAC1811_REG_NEG_PWR_FSR   0x13
#define PAC1811_REG_REFRESH_G   0x14
#define PAC1811_REG_REFRESH_V   0x15
#define PAC1811_REG_SLOW   0x16
#define PAC1811_REG_CTRL_ACT   0x17
#define PAC1811_REG_NEG_PWR_FSR_ACT   0x18
#define PAC1811_REG_SLOW_ALERT1   0x19
#define PAC1811_REG_GPIO_ALERT2   0x1A
#define PAC1811_REG_ACC_FULLNESS_LIMITS   0x1B
#define PAC1811_REG_OC_LIMIT   0x1C
#define PAC1811_REG_UC_LIMIT   0x1D
#define PAC1811_REG_OP_WARNING_LIMIT   0x1E
#define PAC1811_REG_OP_CRITICAL_LIMIT   0x1F
#define PAC1811_REG_OV_LIMIT   0x20
#define PAC1811_REG_UV_LIMIT   0x21
#define PAC1811_REG_STEP_LIMIT   0x22
#define PAC1811_REG_LIMIT_NSAMPLES   0x23
#define PAC1811_REG_ALERT_ENABLE   0x24
#define PAC1811_REG_ACCUMULATOR_COUNT_PRESET   0x25
#define PAC1811_REG_ACCUMULATOR_PRESET   0x26
#define PAC1811_REG_PRODUCT_ID   0xFD
#define PAC1811_REG_MANUFACTURER_ID   0xFE
#define PAC1811_REG_REVISION_ID   0xFF
#define PAC1811_FSR_UNIPOLAR   0
 PAC1811 FSR setting.
#define PAC1811_FSR_BIPOLAR   1
#define PAC1811_FSR_BIPOLAR_HALF   2
#define PAC1811_R9_RSENSE   0.01
 PAC1811 measurement calculation setting.
#define PAC1811_VSENSE_MAX   0.1
#define PAC1811_VSOURCE_MAX   42.0
#define PAC1811_FSC   ( PAC1811_VSENSE_MAX / PAC1811_R9_RSENSE )
#define PAC1811_POWER_FSR   ( PAC1811_FSC * PAC1811_VSOURCE_MAX )
#define PAC1811_PRODUCT_ID   0x84
 PAC1811 device ID setting.
#define PAC1811_MANUFACTURER_ID   0x54
#define PAC1811_DEVICE_ADDRESS_GENERAL_CALL   0x00
 PAC1811 device address setting.
#define PAC1811_DEVICE_ADDRESS_A1A0_GND_GND   0x40
#define PAC1811_DEVICE_ADDRESS_A1A0_GND_VCC   0x41
#define PAC1811_DEVICE_ADDRESS_A1A0_VCC_GND   0x44
#define PAC1811_DEVICE_ADDRESS_A1A0_VCC_VCC   0x45
#define PAC1811_DEVICE_ADDRESS_A1A0_SDA_GND   0x48
#define PAC1811_DEVICE_ADDRESS_A1A0_SDA_VCC   0x49
#define PAC1811_DEVICE_ADDRESS_A1A0_SCL_GND   0x4C
#define PAC1811_DEVICE_ADDRESS_A1A0_SCL_VCC   0x4D
#define PAC1811_MAP_MIKROBUS(cfg, mikrobus)
 MikroBUS pin mapping.

Enumerations

enum  pac1811_return_value_t { PAC1811_OK = 0 , PAC1811_ERROR = -1 }
 PAC1811 Click return value data. More...

Functions

void pac1811_cfg_setup (pac1811_cfg_t *cfg)
 PAC1811 configuration object setup function.
err_t pac1811_init (pac1811_t *ctx, pac1811_cfg_t *cfg)
 PAC1811 initialization function.
err_t pac1811_default_cfg (pac1811_t *ctx)
 PAC1811 default configuration function.
err_t pac1811_send_byte (pac1811_t *ctx, uint8_t data_in)
 PAC1811 send single byte function.
err_t pac1811_receive_byte (pac1811_t *ctx, uint8_t *data_out)
 PAC1811 receive single byte function.
err_t pac1811_write_byte (pac1811_t *ctx, uint8_t reg, uint8_t data_in)
 PAC1811 write register function.
err_t pac1811_read_byte (pac1811_t *ctx, uint8_t reg, uint8_t *data_out)
 PAC1811 read register function.
err_t pac1811_block_write (pac1811_t *ctx, uint8_t reg, uint8_t *data_in, uint8_t len)
 PAC1811 write registers function.
err_t pac1811_block_read (pac1811_t *ctx, uint8_t reg, uint8_t *data_out, uint8_t len)
 PAC1811 read registers function.
err_t pac1811_check_communication (pac1811_t *ctx)
 PAC1811 communication check function.
void pac1811_enable_device (pac1811_t *ctx)
 PAC1811 enable device function.
void pac1811_disable_device (pac1811_t *ctx)
 PAC1811 disable device function.
uint8_t pac1811_get_a1_pin (pac1811_t *ctx)
 PAC1811 get A1 pin function.
err_t pac1811_refresh (pac1811_t *ctx)
 PAC1811 refresh function.
err_t pac1811_refresh_global (pac1811_t *ctx)
 PAC1811 global refresh function.
err_t pac1811_refresh_wo_acc_reset (pac1811_t *ctx)
 PAC1811 refresh without accumulator reset function.
err_t pac1811_set_fsr (pac1811_t *ctx, uint8_t vsense_fsr, uint8_t vbus_fsr)
 PAC1811 set full-scale ranges function.
err_t pac1811_read_data (pac1811_t *ctx, pac1811_data_t *data_out)
 PAC1811 read measurement data function.

Detailed Description

This file contains API for PAC1811 Click Driver.

Enumeration Type Documentation

◆ pac1811_return_value_t

PAC1811 Click return value data.

Predefined enum values for driver return values.

Enumerator
PAC1811_OK 
PAC1811_ERROR